A cluster computing environment is loosely defined as the coupling of at least two computers to cooperatively share a processing load. A multi-cluster environment is an environment which couples at least two clusters. In one example, the clusters are coupled via a communications network.
Within a multi-clustered environment, jobs are scheduled to be executed within each local cluster, as well as across clusters. The scheduling of the jobs is performed by job schedulers. In one example, a cluster may include its own job scheduler that is used to schedule jobs to be run locally. Further, the multi-cluster environment may include a main scheduler that is used to schedule jobs across the multi-cluster environment. The scheduling of jobs across clusters is referred to as grid scheduling. Grid scheduling provides efficient scheduler coordination for jobs scheduled across multiple high performance computer clusters.